Measurement-based admission control utilizing effective envelopes and service curves

ABSTRACT

The admission control algorithm implements measurement-based connection admission control using effective envelopes of an arriving traffic aggregate and the service curves of the corresponding departing traffic aggregate. The approach provides the statistical service guarantees to a variety of service classes. According to the admission control algorithm, arriving traffic is admitted if the sum of the effective envelopes of the arriving traffic entering a network and admitted traffic currently in the network is less than or equal to the service curve.

BACKGROUND AND SUMMARY OF THE INVENTION

[0001] The present invention relates generally to network-based communication architecture. More particularly, the invention relates to providing controlled quality of service in packet-based networks through admission control.

[0002] Currently much of the Internet is designed to provide “best effort” service. The Internet Protocol (IP) is designed to deliver packets of information to an ultimate destination through any available internal links that enable delivery. The actual time it takes to deliver these packets depends on the route taken and the traffic congestion encountered in route. The original design of the Internet Protocol focused on providing ultimate delivery, with the actual time to achieve delivery being only a secondary consideration.

[0003] As the uses for the Internet have grown, and as Internet traffic has expanded geometrically, the original emphasis on delivery over timing is being challenged. With multicast applications and streaming audio and video applications growing in popularity, packet delivery time has become a central focus. Quality of Service (QoS) is a term often used to describe the degree to which a communications network provides reliability, availability and timely throughput. Quality of service addresses issues such as transmission speed, timeliness of packet delivery, amount of jitter a network introduces into packet streams, and the probability of outright packet loss. As businesses begin to rely more and more on their Internet presence, some have expressed willingness to pay more for higher quality of service because the higher quality of service translates directly into a smoother, more responsive experience for their customers. Some Internet service providers thus offer different service level agreements through which they commit to provide different levels of service quality at different fee rates.

[0004] There are many proposals for improving quality of service in packet-switched networks such as the Internet. Quality of service may be improved at the individual router level by making the routers faster and more intelligent. However this also increases the system cost. Other proposals address the quality of service issue at the network model level. At the network model level, the performance of individual routers are largely ignored; focus instead shifts to the aggregate performance of all routers in the network. One popular approach is to consider the aggregate network only in terms of its outer boundary or end-to-end performance. Using such an analytical approach, the performance of the entire network, and the quality of service it provides, can be largely controlled by the behavior of the routers occupying the edge of the network (that is, the routers at the ingress and egress points).

[0005] There are several end-to-end network models for controlling quality of service (QoS) in popular use today. Among the leading models are Integrated Services (IntServ), and Multi-Protocol Label Switching (MPLS) and Differentiated Services (DiffServ). IntServ supports a per-flow quality of service guarantee. It employs a relatively complex architecture in which resources are reserved by means of a signaling protocol that sets up paths and reserves resources. MPLS provides another quality of service guarantee approach that focuses on packet forwarding. Packets are assigned labels at the ingress of an MPLS-compatible domain. Subsequent classification, forwarding and services for the packets are then based on those labels.

[0006] Models, such as IntServ and MPLS, address QoS on a per connection basis and can present scalability difficulties. To provide better scalability, other models have been proposed that address QoS on a traffic aggregate basis. DiffServ is one example of such a model. DiffServ provides quality of service guarantees to packet aggregates by marking packets differently to create different packet classes/aggregates that are entitled to different quality of service handling.

[0007] For the most part, aggregate traffic-based network models share a number of common concepts. They begin from a premise that the network can be characterized as having edge and core routers. The edge routers accept customer traffic (i.e., packets from any source outside the network). Core routers provide transit packet forwarding services among other core routers and/or edge routers. The edge routers control ingress of traffic and thus perform an important admission control function, by permitting or declining requests by outside traffic to enter the network. With the ultimate traffic flow being controlled by the edge routers, through admission control, the core routers simply need to differentiate traffic insofar as necessary to cope with transient congestion within the network itself. The network models may employ statistical multiplexing to maximize utilization of the core router resources.

[0008] Predicting and controlling traffic flow through a network at the aggregate level is a very complex problem. Admission control algorithms that overly restrict ingress waste internal core router resources. On the other hand, admission control algorithms that are too lax can flood the network with too much traffic, resulting in severe drop in quality of service. There have been numerous admission control algorithms proposed. While some of these have been quite ingenious, there remains a great deal of room for improvement.

[0009] For example, Centinkaya and Knightly, in an article entitled “Egress Admission Control,” IEEE Info Com 2000, describe a framework for scaleable quality of service provisioning in which admission control decisions are made at the egress routers based solely on aggregate measurements obtained at the egress router. They introduce a measurement-based service envelope as a way to adaptively describe the end-to-end service received by a traffic class.

[0010] The present invention is an improvement upon the above technique in which a measurement-based admission control algorithm is based on the global effective envelopes of an arriving traffic aggregate and upon the service curves of the corresponding departing traffic aggregate. The admission control algorithm is well adapted to a variety of different network models. Although the invention will be principally described in the context of a multi-router network, the concepts employed are equally applicable to autonomous network systems and even switching devices. In a switching device, for example, the switch hardware/software provides several input ports and output ports. The present invention may be used to control flow of traffic among these input and output ports. Therefore, the invention is applicable to “networks” of different architectural granularities, ranging from single device switches to large, multiple device computer network domain.

[0011] For a more complete understanding of the invention, its objects and advantages, refer to the following description and to the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 is a network diagram illustrating an exemplary end-to-end network model, useful in understanding the admission control algorithm of the present invention;

[0013]FIG. 2 is a block diagram illustrating the pertinent parameters associated with arriving traffic and admitted traffic in a network;

[0014]FIG. 3a is a flowchart diagram of the presently preferred admission control algorithm, illustrating global effective envelopes;

[0015]FIG. 3b is a similar flowchart diagram of the presently preferred admission control algorithm, illustrating local effective envelopes;

[0016]FIG. 4 is a graph illustrating the calculation of delay bound;

[0017]FIG. 5 is a timing diagram illustrating an example of a measured time interval, where T=3τ and M=2;

[0018]FIGS. 6a and 6 b are graphs illustrating measured arriving traffic for time interval k 100 ms;

[0019]FIGS. 7a and 7 b are graphs illustrating measured service envelope for time interval 100 ms;

[0020]FIGS. 8a, 8 b and 8 c are graphs of average link utilization as a function of delay bound for three different scenarios, for delay bound d 100 ms.

DESCRIPTION OF THE PREFERRED EMBODIMENT

[0021] Referring to FIG. 1, an exemplary network is illustrated at 10. Network 10 includes a plurality of edge routers, such as router 12 and router 14 that are in turn connected to a plurality of core routers 16. For purposes of illustration, the edge router 12 serves as the ingress node 18 and edge router 14 serves as the egress node 20. Arriving traffic enters through the ingress node and departing traffic leaves through the egress node, as illustrated.

[0022] For purposes of illustration the arriving aggregate traffic 22 comes from network 24 via edge router 26. For purposes of illustration it will be assumed that the edge router 26 includes a traffic conditioner function 28, limiting the flow of arriving aggregate traffic to within predefined bounds.

[0023] For purposes of illustration the departing aggregate traffic 30 exits edge router 14 and enters network 32.

[0024] Network 10 implements an admission control function 34 which of the packets of arriving aggregate traffic 22 are admitted to the network 10 and which are blocked. The admission control function 34 may be localized in a single router, such as edge router 12. Alternatively, the admission control function can be distributed across the network, with the function being performed by plural routers within the network 10. In accordance with the invention the admission control function 34 implements an admission control algorithm that is based upon the global effective envelope 36 of the arriving aggregate traffic 22 and upon the service curves 38 of the departing aggregate traffic 30.

[0025]FIG. 2 illustrates network 10 with the arriving traffic, admitted traffic and departing traffic being shown in greater detail. The figure introduces some of the terms that will be useful in understanding the presently preferred algorithm. The arriving traffic 22 is assumed to be supplied through a traffic conditioner or regulator 28, which may be implemented at the ingress node 18 to enforce the arriving traffic to comply with the traffic specification submitted by the sender. The traffic conditioner or regulator may be modeled as a leaky bucket that provides a simple metering function. Alternatively, the traffic conditioner may provide more sophisticated traffic shaping functions where the temporal characteristics of a traffic class are selectively modified by delaying local packet forwarding.

[0026] Associated with arriving traffic 22 is a deterministic envelope 42. The deterministic envelope may be characterized in terms of three variables: peak traffic rate, average traffic rate and burst size parameter. The arriving traffic also is assumed to have an associated quality of service requirement 44. Typically each class of service would have its own quality of service requirement. Thus multiple QoS requirements are illustrated at 44 in FIG. 2. The QoS requirements may be characterized by the following variables: probability of delay violation and delay bound.

[0027] The admitted traffic 46 may be differentiated from the arriving traffic, in that the admitted traffic has already passed the admission control point and is thus currently flowing in network 10. When the admitted traffic 46 leaves network 10 it represents departing traffic 30. The departing traffic 30 has associated with it a service curve or service envelope 48 that is measured by monitoring each packet's arrival time and departure time.

[0028] The admission control algorithm of the presently preferred embodiment uses the associated deterministic envelope 42 of the arriving traffic and the associated service envelope 48 of the departing traffic in making a decision whether to admit or deny arriving traffic to meet the desired QoS requirements. FIGS. 3a and 3 b show the presently preferred algorithm in flowchart form. A more rigorous mathematical derivation of the preferred algorithm is presented below. The flowcharts of FIGS. 3a and 3 b make reference to specific equations from the detailed mathematical derivation, where applicable. A discussion of the flowchart will be presented first, as a way of introducing the detailed mathematical derivation that follows. Specifically, FIG. 3a applies to global effective envelopes; FIG. 3b applies to local effective envelopes. The content of these two figures is similar; hence a detailed discussion of FIG. 3a is presented below and may be considered applicable to FIG. 3b, except where the mathematical derivation differs, as will be evident by comparing the Figures.

[0029] Referring to FIG. 3a, the preferred algorithm begins at step 60 with a request to be admitted to the network. As part of the request, the incoming traffic submits its traffic characterization, which is expressed in terms of characterization parameters 62. The specific parameters used by the presently preferred embodiment are:

[0030] Deterministic Envelope A_(j) ^(*)(τ);

[0031] Quality of Service Requirements, QoS;

[0032] Delay Bound, d;

[0033] Probability of Delay Violation, ε.

[0034] Next, at step 64, the algorithm constructs a global effective envelope for the arriving traffic, based on the submitted parameters 62. In the mathematical derivation that follows, the effective envelope for arriving traffic is characterized as G_(new). The G_(new) envelope is depicted in FIG. 3 at 66. As indicated by the dashed lines and bracketed notation, step 64 is performed using equations 3.8-3.11.

[0035] Next the algorithm continues at step 68 to construct a global effective envelope for the admitted traffic, based on measured statistics. Specifically, the measured statistics, listed at 70, include the average and the variance of the amount of arriving aggregate traffic. In the detailed mathematical derivation which follows, the global effective envelope for admitted traffic is designated as G_(N) _(q) ^(q). In FIG. 3, this G_(N) _(q) ^(q) envelope is shown at 72.

[0036] The final admission control decision, step 74, is made based on an analysis of both effective envelopes 66 and 72 along with the service curve 40 calculated using equation 4.5 and the algorithm shown in Table I below. Specifically, the admission control decision will admit incoming traffic if:

G _(new) +G _(N) _(q) ^(q) ≦S ^(q)

[0037] For a more precise statement of the above admission control condition, see the following detained description and in particular, Eqn. (3.12).

[0038] Detailed Description of Preferred Admission Control Algorithm

[0039] A detailed description of the preferred algorithm will now be provided below. For purposes of illustration a Differentiated Service (DS) or DifServ architecture will be assumed. The invention is not limited to the DS architecture inasmuch as the admission control algorithm of the invention may be used with a variety of network architectures.

[0040] In order to provide Quality of Service (QoS), the Integrated Services (IS) architecture use a signaling protocol to set up resource reservations at all routers along the path. Since this approach requires that all routers have to keep per-flow state and process the per-flow resource reservations, this approach has known scalability problems. Differentiated Service (DS) is another approach to provide QoS, but without the restriction on scalability. Routers need only to implement scheduling and buffering mechanisms and apply them based on the DS Code Point (DSCP) presented in the header of arriving packets. The end-to-end QoS service across several domains is built by combining the per domain behaviors (PDBs) of individual DS domains. Those PDBs in their terms are constructed by an appropriate deployment of per-hop forwarding behaviors (PHBs). Several DS domains can exist within a single autonomous system (AS). The definition of PDBs is an active area of research, with the first few drafts currently available]. Hence DS addresses scalability by providing QoS guarantees on traffic aggregate level.

[0041] As discussed above, one of the critical requirements for service provisioning across a DS domain is a presence of an effective Connection Admission Control (CAC). Such admission control can be utilized while establishing dynamic service level agreements (SLAs) for premium service across DS network, or consulted upon re-negotiations of static SLAs. Bandwidth Broker (BB) entity of a DS domain is a typical place for such admission control. The difficulty involved in designing the effective CAC, is that many solutions lead toward topology-dependent implementations, thus limiting their scope and increasing their complexity.

[0042] To implement admission control for DS without scalability problems, several researchers have proposed various forms of Endpoint CAC. In this design, the endpoints of a DS domain (ingress/egress routers) perform admission control and resource management. The routers measure traffic in the network to detect the level of available resources and admit a new connection if and only if, the detected level of resource is sufficiently high.

[0043] The preferred embodiment provides a measurement-based CAC algorithm, which provides statistical QoS guarantees on a traffic aggregate level in a DS domain. The ingress traffic arriving at the boundary of a DS domain is assumed to be conditioned by the upstream domains, policed by our domain to adhere to the rules of an established SLA, and further marked with the appropriate DSCP. Leaky-bucket based policers, shapers and markers are widely proposed. As the DS architecture extends some PDB for a traffic aggregate, we call this traffic aggregate a class in a subsequent discussion (different from DS class). We target the PDBs, which offer delay guarantees to a classified traffic aggregate given both delay and delay violation probability. We described the deterministic envelopes, i.e., arriving traffic envelopes and service envelopes, and the bound on performance characteristics, which can be obtained, from those envelopes. We then derive a measurement-based CAC to establish dynamic SLA and provide statistical guarantees for a variety of service classes by exploiting the statistical traffic envelopes, called global effective envelopes and service curves. To obtain these envelopes, we use the measurement approach. The measurement of the service curves allows our admission control condition to work without the knowledge of the topology of the DS domain and cross traffic in the domain.

[0044] Let us consider a traffic arriving to a network domain. The traffic enters the domain at an ingress node 18 and destines to an egress node 20 (see FIG. 1). In the following we consider a continuous-time fluid low traffic model. An arriving traffic from different flows is differentiated by its QoS requirements. Here we consider the probability of delay violation and the delay bound as the QoS requirements of interest. An arriving traffic with the same QoS requirements, i.e., the same delay bound and probability of delay violation requirements, is treated as a service class. Hence, arriving traffic into the domain is partitioned into Q classes. We use N_(q) to denote the number of flows within a class q .

[0045] The arriving traffic from the flow j of the class q in an interval (t₁,t₂) is denoted as A_(j) ^(q)(t₁,t₂). We assume that traffic arrival from each flow j is regulated by a traffic conditioner and upper bounded by a deterministic subadditive envelope A_(j) ^(q*)(τ) as follows:

A _(j) ^(q)(t,t+τ)≦A _(j) ^(q*)(τ) ∀t≧0, ∀τ≧0.  (2.1)

[0046] The arriving traffic is characterized by the deterministic envelope with a set of parameters. The most commonly used traffic regulators are leaky buckets with a peak rate enforcer. The traffic on flow j is characterized then by three parameters (P_(j),σ_(j), ρ_(j)) with a deterministic envelope is given by

A _(j) ^(q)(τ)=min{P _(j) ^(q)τ,σ_(j) ^(q)+ρ_(j) ^(q)τ} ∀τ≧0  (2.2)

[0047] where P_(j) ^(q)≧ρ_(j) ^(q) is the peak traffic rate, ρ_(j) ^(q) is the average traffic rate, and σ_(j) ^(q) is the burst size parameter.

[0048] As a generalization of the peak-rate enforced leaky bucket the traffic on flow j may be characterized by a set of parameters {σ_(jk) ^(q),ρ_(jk) ^(q)}_(k=1, . . . , K) _(j) , with a deterministic envelope $\begin{matrix} {{A_{j}^{q^{*}}(\tau)} = {\min\limits_{{k = 1},\ldots \quad,K_{j}^{q}}\left\{ {\sigma_{jk}^{q} + {\rho_{jk}^{q}\tau}} \right\}}} & (2.3) \end{matrix}$

[0049] where K_(j) ^(q) is the number of leaky-bucket pairs.

[0050] It is also noted that flows from the same service class can be characterized by different deterministic envelopes, but can have the same QoS requirements. We use A_(j) ^(qout)(t₁,t₂) to denote the traffic from flow j of the class q leaving the domain at the egress node in an interval (t₁,t₂). We then define the aggregate traffic of class q as follows: the aggregate of arriving traffic, ${A_{Nq}\left( {t_{1},t_{2}} \right)} = {\sum\limits_{j\quad \varepsilon \quad N_{q}}{A_{j}^{q}\left( {t_{1},t_{2}} \right)}}$

[0051] and the aggregate of departing traffic ${A_{Nq}^{out}\left( {t_{1},t_{2}} \right)} = {\sum\limits_{j\quad \varepsilon \quad N_{q}}{{A_{j}^{qout}\left( {t_{1},t_{2}} \right)}.}}$

[0052] For a time interval of length β, we define the empirical envelope, E_(Nq)(τ;β) of an arriving aggregate N_(q) of flows from class q, which is the upper bound of the arriving aggregate in any time interval of length τ≦β as follows: $\begin{matrix} {{E_{Nq}\left( {\tau;\beta} \right)} = {\sup\limits_{{({t,{t + \tau}})} \subseteq \beta}{A_{Nq}\left( {t,{t + \tau}} \right)}}} & (2.4) \end{matrix}$

[0053] In the following, we will focus our discussion on the aggregate traffic of a single service class and drop the index ‘q’. We will introduce the definition of a service curve and its application. We assume that there is no traffic in the domain at time t=0. Therefore, for an aggregate traffic, the amount of backlogged traffic in the domain at any time t, B(t), is given by $\begin{matrix} {{B(t)} = {{{A_{N}\left( {0,t} \right)} - {A_{N}^{out}\left( {0,t} \right)}} \geq 0.}} & (2.5) \end{matrix}$

[0054] Also the ingress-to-egress delay suffered by the aggregate traffic at time t is denoted by d(t) and is defined as follows:

d(t)=min{z:z≧0 and A _(N)(0,t)≦A _(N) ^(out)(0,t+z)}  (2.6)

[0055] Definition of Service Curve Let S(·) be a non-decreasing function, with S(0)=0. We say that the domain guarantees the service curve S(·) for the aggregate traffic if for any time t, there exists s≦t such that B(s)=0 and A_(N) ^(out)(s,t)≧S(t−s).

[0056] It can be seen that S(t−s) specifies the lower bound of the amount of the aggregate traffic needed to be served and depart from the domain during some interval (s,t), where the domain is empty at time s.

[0057] From the definition of service curve, the upper bound of delay can be obtained as follows. Consider a busy period of length β. Let s denote the starting time of the busy period, that is, B(s)=0 and A_(N)(0,s)=A_(N) ^(out)(0,s). We assume that the domain guarantees the service curve S(·), that is A_(N) ^(out)(s,t)≧S(t−s), where s≦t+d≦β. From the definition of service curve, we have A_(N) ^(out)(s,t+d)=A_(N) ^(out)(0,t+d)−A_(N)(0,s)≧S(t+d−s). From Eqn. (2.6), thus, A_(N)(0,t)≧A_(N) ^(out)(0,t+d)≧A_(N)(0,s)+S(t+d−s). Hence, from Eqn. (2.4),

A _(N)(s,t)≦E _(N)(t−s;β)≧S(t+d−s)  (2.7)

[0058] Let τ=t−s, it then follows that, for all time t≧0, the delay defined in Eqn. (2.6) is upper bounded as follows: $\begin{matrix} \begin{matrix} {{d(t)} \leq \quad {\min \left\{ {z:{z \geq {0\quad {and}\quad {E_{N}\left( {\tau,\beta} \right)}} \leq {S\left( {\tau + z} \right)}}} \right\}}} \\ {\leq \quad {\max\limits_{0 \leq \tau \leq B}{\min \left\{ {z:{z \geq {0\quad {and}\quad {E_{N}\left( {\tau;\beta} \right)}} \leq {S\left( {\tau + z} \right)}}} \right\}}}} \end{matrix} & (2.8) \end{matrix}$

[0059] From Eqn. (2.8), it is note that the upper bound on delay is the maximum horizontal distance between the arriving aggregate envelope (E_(N)(τ;β)) and the service curve S(τ) (see FIG. 4). It is also noted that β is upper bounded by β_(max), which is the maximum busy period of the aggregate traffic and can be determined as: $\beta_{\max} = {\inf \left\{ {\tau \geq {0{\left. {{{\sum\limits_{j\quad \varepsilon \quad N}{A_{j}^{*}(\tau)}} \leq {S(\tau)}}} \right\}.}}} \right.}$

[0060] Therefore, we will use β=β_(max) in the following discussions.

[0061] The preferred admission control algorithm exploits the deterministic envelopes and the service envelopes to obtain the upper bound of the delay experienced by an arriving traffic based on the worst-case scenario where it is assumed that all flows send traffic with their peak rate simultaneously.

[0062] In the next section, following the concept of the described envelopes, we will derive a statistical service where a small portion of traffic is allowed to violate the delay QoS requirement. We will use so called global effective envelopes to characterize arriving aggregate traffic for each class. Using these envelopes allows us to derive a CAC for statistical services which can be perform the same fashion as for deterministic services.

[0063] Probabilistic Guarantees with Effective Envelopes and Service Curves

[0064] In this section, we derive the probability of delay violation based on the upper bound of the delay shown in the previous section. We then obtain an admission control condition for a single service class by applying the definition of local and global effective envelope presented in R. Boorstyn, A. Burchard, J. Liebeherr, and C. Oottamakorn. Effective envelopes: Statistical bounds on multiplexed traffic in packet networks. In Proceedings of IEEE INFO COMM 2000, Tel Aviv, Israel, March 2000 (hereinafter “Boorstyn, et. al.”). We finally discuss the admission control conditions for multiple service classes.

[0065] Probabilistic Guarantees with local Effective envelopes and Service Curves

[0066] Again we will first consider a single service class and we drop the index ‘q’. An aggregate of arriving traffic from the same service class A_(N)(t₁,t₂) has the same probability of delay violation, ε, and delay bound requirement, d. A_(N)(t₁,t₂) are upper bounded by a family of nonnegative random processes A_(N)(t₁,t₂), which has the following properties: (1) Stationarity: the statistical properties of A_(N)(t₁,t₂) do not change with time (2) Independence: The A_(N)(t₁,t₂) are stochastically independent among all service classes. Let again D_(N)(τ) denote the ingress-to-egress delay experienced by a bit of an aggregate traffic of the N flows which arriving at the domain at time τ. We assume that D_(N)(τ) is a random variable. For a given delay bound d, the domain guarantees that the ingress-to-egress delay of any arriving bit will not exceed the delay bound d, that is, for all time t≧2,0≦τ≦B_(max), from Eqn. (2.8), D_(N)(τ)=min{z:z≧0 and A_(N)(t₁,t+τ)≦S(τ+z)}≦d or, for all time t≧0, 0≦τ≦B_(max), A_(N)(t₁,t+τ)≦S(τ+d). The delay violation occurs if ∃D_(N)(τ) such that

D _(N)(τ)≧d

[0067] or, ∃τ such that

A _(N)(t,t+τ)>S(τ+d)

[0068] With Eqn. (2.8), the probability that the arriving traffic experiences a delay violation is required to be bounded by ε and we have, for all time t≧0, 0≦τ≦B_(max),

Pr[D _(N)(τ)>d]=Pr[A _(N)(t,t+τ)>S(t+d)]≦ε  (1)

[0069] A set of new flows request same service guarantees from a DS domain. The CAC uses the admission control test to ensure that the requested service guarantees and other flows from all service classes can be simultaneously satisfied. From Eqn. (1), we can obtain the admission control condition for a single service class by using the definition of local effective envelope as follows:

[0070] Definition (Local Effective Envelope)

[0071] A local effective envelope for A_(N)(t,t+τ) is a function L_(N) that satisfies for all τ≧0 and all t

Pr[A _(N)(t,t+τ)≦L _(N)(τ;ε)]≧1−ε

[0072] It can be seen that a local effective envelope provides a probabilistic bound for the aggregate traffic A_(N)(t,t+τ) for any specific time interval of length τ.

[0073] Lemma

[0074] Given a set of flows that is partitioned into M classes, and each class contains N_(m) flows with aggregate arrivals, A_(N) _(m) . Let L_(N) _(m) (τ;ε) be local effective envelope for class m. Then the following inequality holds: given x, ${{{If}\quad {\sum\limits_{m}{L_{N_{m}}\left( {\tau;ɛ} \right)}}} \leq x},{{then}\quad {for}\quad {all}\quad t},{{\Pr\left\lbrack {{\sum\limits_{m}{A_{N_{m}}\left( {t,{t + \tau}} \right)}} > x} \right\rbrack} \leq {M \cdot {ɛ.}}}$

[0075] We divide flows from the same service class into two categories, i.e. M=2. The first group is the set of flows, N that are already admitted to the domain. The second group is the new set of flows, K, requesting the QoS service from a DS domain. We denote L_(N) as the local effective envelope of the first group and L_(new) as the local effective envelope of the second group.

[0076] Admission Control Condition for a Single Service Class

[0077] From the definition of the local effective envelope and the lemma, from Eqn. (1), we have that the arriving traffic has a delay violation with probability<ε if

L _(N)(τ;ε/2)+L _(new)(τ;ε2)≦S(τ+d), for 0≦τ≦B _(max)  (2)

[0078] Remark:

[0079] If for the same service class the set of new flows are regulated by different deterministic envelopes A_(j) ^(*), for each set of flows which have the same A_(j) ^(*) it is required to construct their L_(new) ^(j)(·;ε_(j))where ${\sum\limits_{j}ɛ_{j}} = {ɛ/2.}$

[0080] Therefore Eqn. (2) becomes $\begin{matrix} {{{{L_{N}\left( {\tau;{ɛ/2}} \right)} + {\sum\limits_{j}{L_{new}^{j}\left( {\tau;ɛ_{j}} \right)}}} \leq {S\left( {\tau + d} \right)}},{{{for}\quad 0} \leq \tau \leq B_{\max}}} & (3) \end{matrix}$

[0081] The CAC in Eqn. (2) does not depend on the topology of the domain and the scheduling algorithms within the domain, but the measurement-based traffic-characterized envelopes, which can be measured at an ingress and egress node in a DS domain.

[0082] Local Effective Envelope using Measured Moment

[0083] We consider a set of admitted flows, N. We characterize the distribution of the aggregate traffic using the Central Limit theorem, which does not require the knowledge of the underlying distributions of each flow. An approximate local effective envelope of the aggregate traffic can be obtained from the Central Limit Theorem as follows [1]. From the definition of the local effective envelope, we set Pr[A_(N)(t,t+τ)≧x]≈ε/2 and we obtain,

L _(N)(τ;ε/2)≈{overscore (X(τ))}+zσ(τ)  (4)

[0084] where z has the approximate value z≈{square root}{square root over (|log(2πε)|)}, and {overscore (X(τ))} and σ²(τ) are measured average and variance of the amount of aggregate traffic, respectively. We will discuss those measurements in the next section.

[0085] Since the number of new flows may be just a few flows, the Central Limit theorem may not be the appropriate choice for constructing their local effective envelope, i.e., the bound obtained may not be tight enough.

[0086] Instead, we will use the Chernoff bound, which provides more rigorous bound on the aggregate traffic. The local effective envelope of a set of new flows, K, can then be obtained by using the Chernoff bound, and is given as follows:

[0087] Recall the Chernoff bound for a random variable Y:

Pr[Y≧y]≦e ^(−sy) E[e ^(sy) ]∀s≧0  (5)

[0088] We have

Pr[A _(K)(t,t+τ)≧Kx]≦e ^(−Kxs) M _(K)(s,τ).  (6)

[0089] where M_(K)(s,τ) is the moment generating function of the aggregate traffic.

[0090] In Boorstyn, et. al. M_(K)(s,τ) is derived and given in term of the deterministic envelopes of the flows, that is the leaky bucket function in our case. s is chosen so that Eqn. (6) is minimal. With these values of s and M_(K)(s,τ), it yields

L _(new)(τ;ε/2)=K _(min) {x,A _(K) ^(*)(τ)}  (7)

[0091] $\begin{matrix} {{\left( \frac{\rho\tau}{x} \right)^{\frac{x}{A_{K}^{*}{(\tau)}}}\left( \frac{{A_{K}^{*}(\tau)} - {\rho\tau}}{{A_{K}^{*}(\tau)} - x} \right)^{1 - \frac{x}{A_{K}^{*}{(\tau)}}}} \leq \left( {ɛ/2} \right)^{1/K}} & (8) \end{matrix}$

[0092] where A^(K) ^(*)(τ) is a deterministic envelope for each new flow.

[0093] Admission Control Condition for Multiple Service Classes

[0094] The admission control condition in Eqn. (2) does not provide the guarantee that QoS requirements of other service classes use the same ingress-to-egress path will be satisfied if a new set of flows is admitted into the domain. To be able to provide their guarantees, without loss of generality, we assume that the new flows have the highest priority and we test the admission control condition for all the service classes. This can be shown as follows. For each service class we obtain an arriving aggregate traffic envelope L_(N) _(q) ^(q)(τ,ε_(q)/2) and a service envelope S^(q)(·). From Eqn. (2), the new flows with an arriving envelope L_(new)(τ;ε_(q)/2) will be admitted if the following condition is satisfied: for all service classes q,

L _(N) _(q) ^(q)(τ;ε_(q)/2)+L _(new)(τ;ε_(q)/2)≦S ^(q)(τ+d _(q)), for 0≦τ≦B _(max)  (9)

[0095] In this section we show our CAC, which depends on the measurement-based envelopes (L_(N)(·;ε) and S(·)). In the next section we show how to obtain these envelopes.

[0096] Probabilistic Guarantees with Global Effective Envelopes and Service Curves

[0097] In this section, we derive the probability of delay violation based on the upper bound of the delay shown in the previous section. We then obtain an admission control condition for a single service class by applying the definition of global effective envelope presented in. We finally discuss the admission control conditions for multiple service classes.

[0098] Again we will first consider a single service class and we drop the index ‘q’. An aggregate of arriving traffic from the same service class in the interval (t₁,t₂), A_(N)(t₁,t₂) has the same QoS requirements: probability of delay violation, ε, and delay bound requirement, d. A_(N)(t₁,t₂) is characterized by a family of nonnegative random processes, which has the following properties: (1) Stationarity: the statistical properties of A_(N)(t₁,t₂) do not change with time (2) Independence: The A_(N)(t₁,t₂) are stochastically independent among all service classes. Consider an interval of length of the maximum busy period β. Let again D_(N)(t) denote the ingress-to-egress delay experienced by a bit of an aggregate traffic of the N flows which arriving at the domain at time t during the busy period. We assume that D_(N)(t) is a random variable. For a given delay bound d, the domain guarantees that the ingress-to-egress delay of any arriving bit will not exceed the delay bound d, that is, from Eqn. (2.8), for all τ, 0≦τ≦β, $\begin{matrix} {{{D_{N}(t)} = {{\min \left\{ {z:{z \geq {0\quad {and}\quad \sup\limits_{{({t,{t + \tau}})} \subseteq \beta}{A_{N}\left( {t,{t + \tau}} \right)}} \leq {S\left( {\tau + z} \right)}}} \right\}} \leq d}}{{or},{{for}\quad {all}\quad \tau},{0 \leq \tau \leq \beta},}} & (3.1) \\ {{\sup\limits_{{({t,{t + \tau}})} \subseteq \beta}{A_{N}\left( {t,{t + \tau}} \right)}} = {{E_{N}\left( {\tau;\beta} \right)} \leq {{S\left( {\tau + d} \right)}.}}} & (3.2) \end{matrix}$

[0099] The delay violation occurs if ∃D_(N)(t) such that

D _(N)(t)≧d

[0100] or, ∃t,τ such that ${\sup\limits_{{({t,{t + \tau}})} \subseteq \beta}{A_{N}\left( {t,{t + \tau}} \right)}} > {S\left( {\tau + d} \right)}$

[0101] With Eqn. (3.2), the probability that the arriving traffic experiences the delay violation is required to be bounded by e and we then have

Pr[D _(N)(t)≦d,∃t,τ]=Pr[E _(N)(τ;β)≦S(t+d), for all τ0≦τ≦β]≦1−ε  (3.4)

[0102] A set of new flows request same service guarantees from a DS domain. The CAC uses the admission control test to ensure that the requested service guarantees and other flows from all service classes can be simultaneously satisfied. From Eqn. (3.4), we can obtain the admission control condition for a single service class by using the definition of global effective envelope as follows:

[0103] Definition of Global Effective Envelope

[0104] A global effective envelope for an interval of length β is a subadditive function G_(N)(τ;β,ε) that satisfies:

Pr[E _(N)(τ;β)≦G _(N)(τ;β,ε),∀0≦τ≦β]≧1−ε

[0105] It can be seen that a global effective envelope provides a probabilistic bound for the aggregate traffic A_(N)(t,t+τ) for every time interval of length τ in β.

[0106] Lemma

[0107] Given a set of flows that is partitioned into M classes, and each class contains N_(m) flows with aggregate arrivals, A_(N) _(m) . Let G_(N) _(m) (τ;β,ε) be global effective envelope for class m. Then the following inequality holds: given x, ${{{If}\quad {\sum\limits_{m}{G_{N_{m}}\left( {{\tau;\beta},ɛ} \right)}}} \leq x},{{then}\quad {for}\quad {all}\quad t},{{\Pr\left\lbrack {\exists{m{\exists{\tau:{{\sum\limits_{m}{E_{N_{m}}\left( {t,{t + \tau}} \right)}} > {x(\tau)}}}}}} \right\rbrack} \leq {M \cdot {ɛ.}}}$

[0108] We divide flows from the same service class into two categories, i.e. M=2. The first group is the set of flows, N that are already admitted to the domain. The second group is the new set of flows, K, requesting the QoS from a DS domain. We denote G_(N) as the global effective envelope of the first group and G_(new) as the global effective envelope of the second group.

[0109] Admission Control Condition for a Single Service Class

[0110] From the definition of the global effective envelope and the lemma, from Eqn. (3.4), we have that the arriving traffic has a delay violation with probability <ε if

G _(N)(τ;β,ε/2)+G _(new)(τ;β,ε/2)≦S(τ+d), for 0≦τ≦B  (3.5)

[0111] Remark:

[0112] If for the same service class the set of new flows are regulated by different deterministic envelopes A_(j) ^(*), for each set of flows which have the same A_(j) ^(*) it is required to construct their G_(new) ^(j)(·;β,ε_(j)), where ${\sum\limits_{j}ɛ_{j}} = {ɛ/2.}$

[0113] Therefore Eqn. (3.5) becomes: $\begin{matrix} {{{{G_{N}\left( {{\tau;\beta},{ɛ/2}} \right)} + {\sum\limits_{j}{G_{new}^{j}\left( {{\tau;\beta},ɛ_{j}} \right)}}} \leq {S\left( {\tau + d} \right)}},{{{for}\quad 0} \leq \tau \leq B}} & (3.6) \end{matrix}$

[0114] The CAC in Eqn. (3.5) does not depend on the topology of the domain and the scheduling algorithms within the domain, but the measurement-based traffic-characterized envelopes, which can be measured at an ingress and egress node in a DS domain.

[0115] Constructing the Global Effective Envelope

[0116] We consider a set of admitted flows, N. We characterize the distribution of the aggregate traffic using the Central Limit theorem, which does not require the knowledge of the underlying distributions of each flow. An approximate global effective envelope G_(N)(τ;,β,ε) of the aggregate traffic can be obtained from the Central Limit Theorem as follows. From the definition of the global effective envelope, we set Pr[E_(N)(τ;β)≧x, ∀0≦τ≦β]≈ε. For given τ₀,β we then have, for every integer k,

G _(N)(τ;β,ε)≈α[{overscore (X((k+1)τ/k))}+z′σ(((k+1)τ/k)], ∀τε[τ₀,β]  (3.7)

[0117] where α=1+1/(k+1), z′ has the approximate value z′≈{square root}{square root over (|log(2πε′|)} with ε′=τ₀(α−1)ε/βk, {overscore (X(τ))} and σ²(τ) are measured average and variance of the amount of aggregate traffic, respectively. We will discuss those measurements in the next section.

[0118] From Eqn. (3.4) it can be seen that there are several possible global effective envelopes. For given τ₀,β, the method recursively calculate the k_(i),α_(i), and τ₁ for 1≦i≦n, where τ_(n) is the first point which is greater than β, therefore we can obtain n points of a global effective envelope as follows: $\begin{matrix} {{k_{i} = {z\left( {z + \frac{\overset{\_}{X\left( \tau_{i - 1} \right)}}{\sigma \left( \tau_{i - 1} \right)}} \right)}},} & (3.8) \\ {{\alpha_{i} = {1 + \frac{1}{k_{i} + 1}}},} & (3.9) \end{matrix}$

τ_(i)=α_(i)τ_(i−1),  (3.10)

[0119] and, from Eqn. (3.7),

G _(N)(τ_(i);β,ε)≈α_(i)[{overscore (X((k _(i)+1)τ_(i) /k _(i)))}+z′σ((k _(i)+1)τ_(i) /k _(i))]  (3.11)

[0120] where z≈{square root}{square root over (|log(2πε|)}.

[0121] For a set of new flows, one can obtain the global effective envelope of the new flows G_(new) by using the same recursive method as follows. However, instead of using the measurement-based {overscore (X(τ))} and σ²(τ), in Eqs. (3.8) and (3.11) {overscore (X(τ))}=Kρ_(K)τ and σ²(τ)=Kρ_(K)τ(A_(K) ^(*)(τ)−ρ_(K)τ), where ρ_(K) is the long-term average and A_(K) ^(*)(τ) is a deterministic envelope for each new flow.

[0122] Admission Control Condition for Multiple Service Classes

[0123] The admission control condition in Eqn. (3.2) does not provide the guarantee that QoS requirements of other service classes use the same ingress-to-egress path will be satisfied if a new set of flows is admitted into the domain. To be able to provide their guarantees, without loss of generality, we assume that the new flows have the highest priority and we test the admission control condition for all the service classes. This can be shown as follows. For each service class we obtain an arriving aggregate traffic envelope G_(N) _(q) ^(q)(τ;β,ε_(q)/2) and a service envelope S^(q)(·). From Eqn. (3.5), the new flows with an arriving envelope G_(new)(τ;,β,ε_(q)/2) will be admitted if the following condition is satisfied: for all service classes q,

G _(Nq) ^(q)(τ;ε_(q)2)+G _(new)(τ;β,ε_(q)/2)≦S ^(q)(τ+d _(q)), for 0≦τ≦B  (3.12)

[0124] In this section we show our CAC, which depends on the measurement-based envelopes (G_(N)(·;β,ε) and S(·)). In the next section we show how to obtain these envelopes.

Measurements of Perspective Envelopes

[0125] In this section, based on, we show how to measure the characteristic parameters for constructing the global effective envelopes of the arriving aggregate traffic and the service envelope of the departing aggregate traffic for a single service class. First we measure the average and variance of the amount of arriving aggregate traffic, which are used in Eqn. (3.3). We then measure the service envelope of a single service class traffic. At the end of this section we show the admission control algorithm that we will use in the evaluation example below.

[0126] Measurement of Aggregate Arriving Envelopes

[0127] We are interested in the aggregate characteristic of an arriving traffic at ingress node. To characterize the aggregate traffic as a Gaussian process, we need to measure the first and second moment of the amount of traffic arriving at the ingress node. We note that in, the average and variance of arriving traffic rate are measured, while here we measure the average and the variance of the amount of an arriving traffic. Again let A_(N)(t₁,t₂) denote the arriving traffic from an aggregate flow in the interval (t₁,t₂). Consider time to be slotted with the equal length τ, i.e., for MPEG sources, we can think of τ as the frame time. We also divide time into M large intervals whose length is T (see FIG. 5). For the m^(th) interval we obtain the bound of an arriving traffic, X_(k) ^(m) as a function of time interval kτ. We consider at the current time t. Then the bounded amount of the measured traffic over the m^(th) interval of length T from the current time can be obtained as follows: $\begin{matrix} {X_{k}^{m} = {\max\limits_{0 \leq n \leq {({\frac{T}{\tau} - k})}}{A\left\lbrack {{t - {mT} + {n\quad \tau}},{t - {mT} + {\left( {n + k} \right)\tau}}} \right\rbrack}}} & (4.1) \end{matrix}$

[0128] for m=1 , . . . , M and ${k = 1},\quad \ldots \quad,{\frac{T}{\tau}.}$

[0129] Thus for every T time slot, the bounded envelope X_(k) ^(m) is obtained. From these envelopes we can obtain the average {overscore (X_(k))} and the variance σ_(k) ² of the measured envelopes as follows: $\begin{matrix} {{{\overset{\_}{X}}_{k} = {\sum\limits_{m = 1}^{M}\quad X_{k}^{m}}}{and}} & (4.2) \\ {\sigma_{k}^{2} = {\frac{1}{M - 1}{\sum\limits_{m = 1}^{M}\quad \left( {X_{k}^{m} - {\overset{\_}{X}}_{k}} \right)^{2}}}} & (4.3) \end{matrix}$

[0130] Remark: τ, T, and M are the key parameters for the measurement. Choosing an improper choice of τ, T, and M may lead to inaccurately characterize the arriving aggregate traffic and consequently overestimate the bandwidth required by connections. We varied these parameters in our approach and found that our approach is not very sensitive to the changing. The further discussion of how to choose the parameters can be found in C. Cetinkaya and E. Knightly. Egress Admission Control. In Proceedings of IEEE INFO COMM 2000, Tel Aviv, Israel, March 2000; and D. Tse and M. Grossglauser. Measurement-Based Call Admission Control: Analysis and Simulation. In Proceedings of IEEE INFOCOM 1997, Kobe, Japan, April 1997.

[0131] We provide an example of an arrival envelope from a simulation experiment in FIGS. 6(a) and (b). In FIG. 6(a), we plot the amount of arrival aggregate traffic as a function of time interval. While FIG. 6(b) depicts the arrival aggregate rate as a function of time interval. The simulation consists of 120 multiplexed independent MPEG-2 video traces. These traces are obtained from the movie “Starship Troopers” (“Starship”). Starship has the peak rate of 18.6336 Mbps and the average rate of 4.26 Mbps. The frame rate of Starship is 30 frames per second. This type of traffic has a quite large peak-to-mean ratio, which indicates its significant burstiness. From FIG. 6, the arriving envelope and arrival rate are significantly smaller than the peak envelope and peak rate, respectively. This is due to the statistical multiplexing of the traffic aggregate. As the figures show, given a long time interval, the amount of the arriving traffic and its arrival rate decrease toward the average rate.

Measurement of Aggregate Service Envelopes

[0132] Consider traffic arriving at a DS domain at an ingress node and leaving at an egress node. For measuring service envelopes, we assume that the clocks in the domain are synchronized. We consider at the packet system where packets are serviced at discrete times rather than continuous times. Each packet arriving at the ingress node will be time-stamped. Hence at the egress node, we are able to determine the ingress-to-egress delay of each packet. Let a_(j) denote the arriving time and d_(j) denote the departure time of the j^(th) packet. We consider this traffic to be backlogged whenever at least one packet in the system. The backlogging condition can be checked by comparing the arriving and the departure times of packets. Traffic is continuously backlogged for k packets in the interval [a_(j), d_(j+k−1)] if

d _(j+m) >a _(j+m+1), for all 0≦m≦k−2  (4.4)

[0133] for k≧1.

[0134] Next, let ServEnv is a list containing (x,S_(j) ^(k)(x)) pairs which represent the amount of time S_(j) ^(k)(x) required to service x bits when considering the packet j with the number of backlogged packets=k. Again consider an interval of length T, which contains the total number of arriving packets, n. For packet j, we consider the delay of the packet and also the delay of the packets backlogged after this packet. We thus can define S_(j) ^(k)(x) as follows:

S _(j) ^(k)(x)=d _(j+k−1) −a _(j)  (4.5)

[0135] for all k≧1 and satisfies the backlogging condition.

[0136] A bounded service envelope can be obtained as follows:

[0137] Initialze (ServEnv)

[0138] for packet j=1 to n

[0139] S_(j) ^(i)<−d_(j)−a_(j)

[0140] x(S_(j) ^(i))<−Size (packet (j))

[0141] k<−2

[0142] while (d_(j+k−1))

[0143] S_(j) ^(k)<−d_(j+k−1)−a_(j)

[0144] x(S_(j) ^(k) )<−x(S_(j) ^(k−1))+Size(packet(j+k−1))

[0145] k<−k+1

[0146] Merge (ServEnv, (x(S_(j) ^(k))∀k, ServEnv)

[0147] for i=(Length(ServEnv)−1) to 0

[0148] if (X[i]<x[i−1])

[0149] Remove(x[i−1], S[i−1])

[0150] Using ServEnv to plot a service envelope.

[0151] Table I Bounded Service Envelope Algorithm

[0152]FIG. 7(a) shows a service envelope of an aggregate of departing traffic obtained from a simulation. The simulation consists of a node with a 622-Mbps link and the same number of sources (Starship) used for FIGS. 6a and 6 b. It is noted that the envelope is an increasing function. In addition, FIG. 7(b) depicts the slope of the service envelope. The slope of the envelope indicates variation of the service rate for the burstiness of the arriving aggregate flows.

[0153] Admission Control Algorithm Using Local Effective Envelopes

[0154] I. To request the QoS for its traffic from a DS domain, the user submits to a BB its traffic characterization containing A_(j) ^(*)(τ), QoS requirements, d and ε.

[0155] II. CAC constructs a local effective envelope, L_(new), based on the submitted parameters by using Eqs. (7) and (8).

[0156] III. CAC then uses the measurement of the average and variance of arriving traffic to construct another local effective envelopes, L_(N) _(q) ^(q), from Eqn. (4).

[0157] IV. CAC finally makes an admission control decision based on L_(new), L_(N) _(q) ^(q), and S^(q) obtained from Section as follows. The request is accepted if the condition in Eqn. (9) is true.

[0158] Admission Control Algorithm using Global Effective Envelope

[0159] I. To request the QoS for its traffic from a DS domain, the user submits to a BB its traffic characterization containing A_(j) ^(*)(τ), QoS requirements, d and ε.

[0160] II. CAC constructs a global effective envelope, G_(new), based on the submitted parameters by using Eqs. (3.8)-(3.11).

[0161] III. CAC then uses the measurement of the average and variance of arriving traffic (obtained from Eqs. (4.2) and (4.3) respectively) to construct another global effective envelopes for admitted flows, G_(N) _(q) ^(q), from Eqs. (3.8)-(3.11).

[0162] IV. CAC finally makes an admission control decision based on G_(new), G_(N) _(q) ^(q), and S^(q) obtained from Section as follows. The request is accepted if the condition in Eqn. (3.12) is true.

Evaluation and Simulation Results

[0163] In this section, we evaluate the effectiveness of our CAC condition. We consider that all flows are homogeneous, that is, all flows satisfy the same deterministic envelope and require the same delay QoS guarantee from a DS domain. Starship is again used as a traffic source. For simulations, we set the probability of delay violation ε=10⁻⁶ and vary the delay bound requirement d. We consider a DS domain, which has an egress node with a link capacity of 622 Mbps (C=622 Mbps for all simulations). All links in the domain has the same capacity as of the egress link. Each node has a FIFO scheduler. We consider three scenarios where the number of nodes and cross traffic in the domain is changed as follows:

[0164] I. The DS domain consists of a node without any cross traffic (see FIG. 8(a)).

[0165] II. The DS domain consists of two nodes without any cross traffic (see FIG. 8(b)).

[0166] III. The DS domain consists of three nodes with some cross traffic (see FIG. 8(c)).

[0167] Note that in configuration III, we also use 40 flows of Starship as cross traffic with the same QoS requirements as of the main traffic.

[0168] We will evaluate our approach (‘Approach’) by using the CAC algorithm described above. As the benchmarks for our approach, we also investigate two of the following approaches and a set of simulations (‘Simulation’). First, we consider average rate allocation (‘Average Rate’), where the maximum number of admissible flows is determined by the link capacity divided by the long-term average rate of each flow and, therefore, the average link utilization for this approach is unity. Second, we consider the peak rate allocation (‘Peak Rate’), where the maximum number of admissible flows is determined by the link capacity divided by the peak rate of each flow. For the simulation proposes, each flow starts randomly sending traffic into the DS domain. Many simulations are performed. The average result of the simulation is presented. We compare the average link utilization, U_(ave), obtained from each approach. U_(ave) is defined as follows: $U_{ave} = \frac{\sum\limits_{j = 1}^{N}\quad \rho_{j}}{C}$

[0169] where N is the number of connection admitted to the domain, ρ_(j) is the long-term average rate of each flow, and C is the link capacity at the egress node.

[0170]FIGS. 8a-8 c show the three scenarios we investigate and the corresponding results where the average link utilization as a function of the delay bound is depicted. From the results, the link utilization obtained by the simulations and our approach is considerably higher than the one obtained by the peak rate allocation. This shows that the simulations and our approach can exploit the multiplexing gain from the traffic aggregate and, hence, yield the high link utilization. For example, from FIG. 8(a), for the delay bound d=10 msec, the simulation and our approach yield 86% of the link utilization, respectively. While the peak rate allocation can only obtain 82%. In addition, the results show that our approach can accurately characterize arriving and departing aggregate traffic. FIGS. 8(b)-(c) show that our approach can obtain the accurate condition of the domain without the knowledge of the underlying topology and cross traffic and yield the link utilization close to the simulation results.

[0171] From the foregoing it will be appreciated that the present invention provides a measurement-based admission control algorithm that exploits the global effective envelopes and service envelopes to accurately characterize arriving and departing traffic aggregate. Based on the measurement, the CAC algorithm is tunable through a set of parameters. The algorithm is scalable and can support a variety of service classes. We showed the effectiveness of the CAC algorithm by comparing the link utilization obtained by the algorithm to the results from the simulations. While the invention has been described in its presently preferred form, it will be understood that the principles of the invention may be applied to may application and that implementation details of the algorithm can be varied without departing from the spirit of the invention as set forth in the appended claims. 

What is claimed is:
 1. A method of performing admission control of traffic flow in an information network, comprising: determining a first effective envelope associated with arriving traffic entering said network; determining a second effective envelope associated with admitted traffic currently in said network; determining a service curve by measuring departing traffic leaving said network; and admitting said arriving traffic if the sum of the first and second global effective envelopes is less than or equal to said service curve.
 2. The method of claim 1 wherein said first and second envelopes are global effective envelopes.
 3. The method of claim 1 wherein said second envelopes is a global effective envelopes determined as a function of the measured average and variance of the aggregate traffic.
 4. The method of claim 1 wherein said first and second envelopes are local effective envelopes.
 5. The method of claim 1 wherein said second envelopes is a local effective envelopes determined as a function of the measured average and variance of the aggregate traffic.
 6. The method of claim 1 wherein said first effective envelope is based on the aggregate of arriving traffic.
 7. The method of claim 6 wherein said aggregate is determined by measuring an aggregate arrival flow at plural time intervals and by calculating the average and variance.
 8. The method of claim 1 wherein and second effective envelope is recursively calculated.
 9. The method of claim 1 wherein said service curve is determined based on measured packet delay.
 10. The method of claim 1 wherein said service curve is determined by developing a list of pairs representing the amount of time required to service one packet of information and the number of backlogged packets of information and using said list to determine a bounded service envelope.
 11. A method of performing admission control of traffic flow in an information system, comprising: determining a first effective envelope associated with arriving traffic entering said network; determining a second effective envelope associated with admitted traffic currently in said network; determining a service curve by measuring departing traffic leaving said network; and admitting said arriving traffic if the sum of the first and second global effective envelopes is less than or equal to said service curve.
 12. The method of claim 11 wherein said information system is a multi-port switch.
 13. The method of claim 11 wherein said information system is an autonomous network.
 14. The method of claim 11 wherein said information system is a computer network domain. 